package com.xingkeduo.service.cms.marketing;

import com.xingkeduo.model.param.MarketingReceiveHistoryParam;
import com.xingkeduo.util.tool.ResponseMessage;
/**
 * 
* @ClassName: MarketingReceiveService
* @Description: 用户领取营销类卡，券，券包记录
* @author lixin
* @date Apr 24, 2019 2:25:35 PM
*
 */
public interface MarketingReceiveService {
	/**
	 * 
	* @Title: getUserMarketingReceiveList 
	* @Description: 用户领取记录列表 
	* @param @param couponReceiveHistoryExample
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date May 3, 2019 8:10:06 PM
	 */
	ResponseMessage getUserMarketingReceiveList(MarketingReceiveHistoryParam couponReceiveHistoryExample);
	/**
	 * 
	* @Title: getUserMarketingUseDetail 
	* @Description: 用户领取详情
	* @param @param couponReceiveHistoryId
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date May 3, 2019 8:10:19 PM
	 */
	ResponseMessage getUserMarketingUseDetail(Long couponReceiveHistoryId, Integer marketingType);
	/**
	 * 
	* @Title: auditUserMarketing 
	* @Description: 审核用户领取的券，卡的状态 
	* @param @param couponReceiveHistoryId
	* @param @param status
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date May 3, 2019 8:10:36 PM
	 */
	ResponseMessage auditUserMarketing(Long couponBagReceiveHistoryId, Integer marketingType, Integer status);
	/**
	 * 
	* @Title: getMarketingBagUseHisory 
	* @Description: 查询券包下券卡使用记录 
	* @param @param marketingId
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date May 20, 2019 3:29:14 PM
	 */
	ResponseMessage getMarketingBagUseHisory(Long marketingId,Integer marketingType);
	/**
	 * 
	* @Title: getReceiveLink 
	* @Description: 领取二维码 
	* @param @param marketingId
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date May 27, 2019 5:03:33 PM
	 */
	ResponseMessage getReceiveLink(Long marketingId, Integer marketingType);
	/**
	 * 
	* @Title: pushExpirationReminder 
	* @Description: 过期消息推送 
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date May 30, 2019 3:50:55 PM
	 */
	ResponseMessage pushExpirationReminder();
	/**
	 * 
	* @Title: getUserMarketingUseHisory 
	* @Description: 查询用户券使用记录 
	* @param @param userId
	* @param @param marketingType
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date Jun 12, 2019 11:33:26 AM
	 */
	ResponseMessage getUserMarketingCouponUseHisory(Long userId,Integer pageNum,Integer pageSize);
	/**
	 * 
	* @Title: getUserMarketingCardUseHisory 
	* @Description: 查询用户卡使用记录 
	* @param @param userId
	* @param @param marketingType
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date Jun 12, 2019 11:37:49 AM
	 */
	ResponseMessage getUserMarketingCardUseHisory(Long userId,Integer pageNum,Integer pageSize);
	/**
	 * 
	* @Title: expireAbolishCoupon 
	* @Description: 过期更新领取券的状态
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date Jun 21, 2019 5:40:07 PM
	 */
	ResponseMessage expireAbolishCoupon();
	/**
	 * 
	* @Title: expireAbolishCoupon 
	* @Description: 过期更新领取卡的状态
	* @param @return    设定文件 
	* @return ResponseMessage    返回类型 
	* @throws 
	* @author lixin
	* @date Jun 21, 2019 5:40:07 PM
	 */
	ResponseMessage expireAbolishCard();

	
}
